#include<bits/stdc++.h>
using namespace std;
inline int read(){
	int x=0,f=1;char ch=getchar();
	while(ch<'0'||ch>'9'){if(ch=='-')f=-1;ch=getchar();}
	while(ch>='0'&&ch<='9')x=(x<<3)+(x<<1)+(ch^48),ch=getchar();
	return x*f;
}
void write(int x){
	if(x<0) putchar('-'),x=-x;
	if(x>=10) write(x/10);
	putchar(x%10+'0');
}
const int N = 2e5+10;
int n,q,ans;
int a[N],s[N];
signed main(){
	freopen("pockets.in","r",stdin);
	freopen("pockets.out","w",stdout);
	n = read();
	for(int i = 1;i<n;i++) a[i] = read(),s[i] = a[i] + s[i-1];
	q = read();
	while(q--){
		a[n] = read(),s[n] = a[n]+s[n-1],ans = 0;
		if(a[n]>=s[n-1]-a[1]-a[2]){write(a[n]+a[1]+a[1]-s[n-1]),putchar('\n');continue;}
//		int g = 0,h = 0;
//		for(int i = n;i-2;i--){
//			if(g<h) g+=a[i];
//			else h+=a[i];
//		}ans = max(g,h);
		for(int i = n;i-2;--i)
			ans = max(ans,s[n]-s[i-1]-ans);
		ans+=a[1];
		write((ans<<1)-s[n]),putchar('\n');
	}
	return 0;
}

